package com.mindata.blockmanager.model;

import com.mindata.blockmanager.model.base.BaseEntity;
import lombok.Data;

import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;

/**
 * 联盟的成员
 *
 * @author wuweifeng wrote on 2018/3/5.
 */
@Entity
@Table(name = "member", uniqueConstraints = @UniqueConstraint(columnNames = {"appId"}))
@Data
public class Member extends BaseEntity {
    /**
     * 节点id，用于校验该客户是否合法，客户端启动时需要带着该值。一个公司可能有多个appId，相当于多个服务器节点
     */
    private String appId;
    /**
     * 成员名
     */
    private String name;
    /**
     * ip（可不设置，由该成员客户端启动后自行检测）
     */
    private String ip;

    /**
     * 监听端口
     */
    private int port;

    /**
     * 属于哪个联盟链，groupId
     */
    private int groupId;

    /**
     * raft监听端口
     */
    private int raftPort;

    /**
     * 服务编号
     */
    private int serverId;


}
